#ifndef SCREEN_H
#define SCREEN_H

#include <stdint.h>
#include "kbd.h"

struct screen_device {
    void (*clear)(void);
    void (*putchar)(char s);
    void (*print)(char* str);
    void (*input)(char* buf, uint16_t len, struct kbd_device* dev);
    void (*write)(uint8_t x, uint8_t y, char c);
    void (*update)(void);
};

void screen_init(struct screen_device* dev);

#endif // SCREEN_H

